#![allow(elided_lifetimes_in_paths)]
#![allow(clippy::wildcard_imports)]
pub use sea_orm_migration::prelude::*;
mod m20220101_000001_users;
mod m20240101_000001_addresses;
mod m20240101_000002_admins;
mod m20240101_000003_articles;
mod m20240101_000004_article_products;
mod m20240101_000005_article_tags;
mod m20240101_000006_attribute_groups;
mod m20240101_000007_attribute_group_translations;
mod m20240101_000008_attributes;
mod m20240101_000009_attribute_translations;
mod m20240101_000010_attribute_value_translations;
mod m20240101_000011_customer_groups;
mod m20240101_000012_customer_group_translations;
mod m20240101_000013_customers;
mod m20240101_000014_products;
mod m20240101_000015_product_attributes;
mod m20240101_000016_product_categories;
mod m20240101_000017_product_images;
mod m20240101_000018_product_videos;
mod m20240101_000019_product_skus;
mod m20240101_000020_product_translations;
mod m20240101_000021_customer_favorites;
mod m20240101_000022_orders;
mod m20240101_000023_order_payments;
mod m20240101_000024_order_items;
mod m20240101_000025_order_fees;
mod m20240101_000026_order_histories;
mod m20240101_000027_order_returns;
mod m20240101_000028_order_return_payments;
mod m20240101_000029_brands;
mod m20240101_000030_cache;
mod m20240101_000031_cache_locks;
mod m20240101_000032_catalogs;
mod m20240101_000033_catalog_translations;
mod m20240101_000034_categories;
mod m20240101_000035_category_paths;
mod m20240101_000036_category_translations;
mod m20240101_000037_checkout;
mod m20240101_000038_customer_socials;
mod m20240101_000039_currencies;
mod m20240101_000040_failed_jobs;
mod m20240101_000041_job_batches;
mod m20240101_000042_jobs;
mod m20240101_000043_locales;
mod m20240101_000044_permissions;
mod m20240101_000045_model_has_permissions;
mod m20240101_000046_cart_items;
mod m20240101_000047_countries;
mod m20240101_000048_notifications;
mod m20240101_000049_page_modules;
mod m20240101_000050_pages;
mod m20240101_000051_password_reset_tokens;
mod m20240101_000052_personal_access_tokens;
mod m20240101_000053_plugins;
mod m20240101_000054_roles;
mod m20240101_000055_role_has_permissions;
mod m20240101_000056_regions;
mod m20240101_000057_region_states;
mod m20240101_000058_reviews;
mod m20240101_000059_sessions;
mod m20240101_000060_settings;
mod m20240101_000061_states;
mod m20240101_000062_tags;
mod m20240101_000063_tag_translations;
mod m20240101_000064_tax_classes;
mod m20240101_000065_tax_rates;
mod m20240101_000066_tax_rules;
mod m20240101_000067_verify_codes;
mod m20240101_000068_attribute_values;
mod m20240101_000069_model_has_roles;
mod m20240101_000070_order_shipments;
mod m20240101_000071_page_translations;
mod m20240101_000072_product_relations;
mod m20240101_000073_article_translations;
mod m20240101_000074_order_return_histories;

pub struct Migrator;

#[async_trait::async_trait]
impl MigratorTrait for Migrator {
    fn migrations() -> Vec<Box<dyn MigrationTrait>> {
        vec![
            Box::new(m20220101_000001_users::Migration),
            Box::new(m20240101_000001_addresses::Migration),
            Box::new(m20240101_000002_admins::Migration),
            Box::new(m20240101_000003_articles::Migration),
            Box::new(m20240101_000004_article_products::Migration),
            Box::new(m20240101_000005_article_tags::Migration),
            Box::new(m20240101_000006_attribute_groups::Migration),
            Box::new(m20240101_000007_attribute_group_translations::Migration),
            Box::new(m20240101_000008_attributes::Migration),
            Box::new(m20240101_000009_attribute_translations::Migration),
            Box::new(m20240101_000010_attribute_value_translations::Migration),
            Box::new(m20240101_000011_customer_groups::Migration),
            Box::new(m20240101_000012_customer_group_translations::Migration),
            Box::new(m20240101_000013_customers::Migration),
            Box::new(m20240101_000014_products::Migration),
            Box::new(m20240101_000015_product_attributes::Migration),
            Box::new(m20240101_000016_product_categories::Migration),
            Box::new(m20240101_000017_product_images::Migration),
            Box::new(m20240101_000018_product_videos::Migration),
            Box::new(m20240101_000019_product_skus::Migration),
            Box::new(m20240101_000020_product_translations::Migration),
            Box::new(m20240101_000021_customer_favorites::Migration),
            Box::new(m20240101_000022_orders::Migration),
            Box::new(m20240101_000023_order_payments::Migration),
            Box::new(m20240101_000024_order_items::Migration),
            Box::new(m20240101_000025_order_fees::Migration),
            Box::new(m20240101_000026_order_histories::Migration),
            Box::new(m20240101_000027_order_returns::Migration),
            Box::new(m20240101_000028_order_return_payments::Migration),
            Box::new(m20240101_000029_brands::Migration),
            Box::new(m20240101_000030_cache::Migration),
            Box::new(m20240101_000031_cache_locks::Migration),
            Box::new(m20240101_000032_catalogs::Migration),
            Box::new(m20240101_000033_catalog_translations::Migration),
            Box::new(m20240101_000034_categories::Migration),
            Box::new(m20240101_000035_category_paths::Migration),
            Box::new(m20240101_000036_category_translations::Migration),
            Box::new(m20240101_000037_checkout::Migration),
            Box::new(m20240101_000038_customer_socials::Migration),
            Box::new(m20240101_000039_currencies::Migration),
            Box::new(m20240101_000040_failed_jobs::Migration),
            Box::new(m20240101_000041_job_batches::Migration),
            Box::new(m20240101_000042_jobs::Migration),
            Box::new(m20240101_000043_locales::Migration),
            Box::new(m20240101_000044_permissions::Migration),
            Box::new(m20240101_000045_model_has_permissions::Migration),
            Box::new(m20240101_000046_cart_items::Migration),
            Box::new(m20240101_000047_countries::Migration),
            Box::new(m20240101_000048_notifications::Migration),
            Box::new(m20240101_000049_page_modules::Migration),
            Box::new(m20240101_000050_pages::Migration),
            Box::new(m20240101_000051_password_reset_tokens::Migration),
            Box::new(m20240101_000052_personal_access_tokens::Migration),
            Box::new(m20240101_000053_plugins::Migration),
            Box::new(m20240101_000054_roles::Migration),
            Box::new(m20240101_000055_role_has_permissions::Migration),
            Box::new(m20240101_000056_regions::Migration),
            Box::new(m20240101_000057_region_states::Migration),
            Box::new(m20240101_000058_reviews::Migration),
            Box::new(m20240101_000059_sessions::Migration),
            Box::new(m20240101_000060_settings::Migration),
            Box::new(m20240101_000061_states::Migration),
            Box::new(m20240101_000062_tags::Migration),
            Box::new(m20240101_000063_tag_translations::Migration),
            Box::new(m20240101_000064_tax_classes::Migration),
            Box::new(m20240101_000065_tax_rates::Migration),
            Box::new(m20240101_000066_tax_rules::Migration),
            Box::new(m20240101_000067_verify_codes::Migration),
            Box::new(m20240101_000068_attribute_values::Migration),
            Box::new(m20240101_000069_model_has_roles::Migration),
            Box::new(m20240101_000070_order_shipments::Migration),
            Box::new(m20240101_000071_page_translations::Migration),
            Box::new(m20240101_000072_product_relations::Migration),
            Box::new(m20240101_000073_article_translations::Migration),
            Box::new(m20240101_000074_order_return_histories::Migration),
            // inject-above (do not remove this comment)
        ]
    }
}
